package com.niubi.yygh.user.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.niubi.yygh.model.user.UserInfo;

import com.baomidou.mybatisplus.extension.service.IService;
import com.niubi.yygh.vo.user.LoginVo;
import com.niubi.yygh.vo.user.UserAuthVo;
import com.niubi.yygh.vo.user.UserInfoQueryVo;

import java.util.Map;

/**
 * <p>
 * 用户表 服务类
 * </p>
 *
 * @author 牛俊杰
 * @since 2022-03-24
 */
public interface UserInfoService extends IService<UserInfo> {

  Map<String, Object> loginUser(LoginVo loginVo);

  UserInfo selectUserByOpenId(String openid);

  void userAuth(Long userId, UserAuthVo userAuthVo);

  IPage<UserInfo> selectPageUser(Page<UserInfo> pageParam, UserInfoQueryVo userInfoQueryVo);

  void lock(Long userId, Integer status);

  Map<String, Object> show(Long userId);

  void approval(Long userId, Integer authStatus);
}
